home *** CD-ROM | disk | FTP | other *** search
- Subject: Re: ODF's Color Model
- Sent: 5/23/96 10:00 PM
- Received: 5/24/96 8:49 AM
- From: Damon Cokenias, cokenias@mtn-palace.com
- Reply-To: ODF Interest, ODF-Interest@CILabs.ORG
- To: OpenDoc Development Framework Discussion List, ODF-Interest@CILabs.
-
-
- > The inlines FW_RGB_R, ...G, and ...B clearly show an intent to encode
- >the RGB values as 8-bit (uchar) intensities. Unfortunately, the setting inline
- >function FW_SetRGB uses the value-setting macro FW_RGB with short values
- >for r, g, and b. If one looks at the Set function's interface, which is
- >reflected upward to _all_ color classes and their interfaces, one is lead to
- >believe that 16-bit (i.e., Mac-like) color values are supported. This is not
- >the case, unfortunately. Although the parameters are shorts, only values in
- >the range 0..255 will work _correctly_. All others _will_ result in incorrect
- >colors being encoded in the ulong fRGB.
-
- I agree, the API should use 8-bit values instead of 16. I also found this
- misleading when I first used ODF.
-
- > I consider the basic ODF color representation (a single unsigned long
- >_encodoing_ of an 8-bit rgb color model) to be inadequate. For example, SGI
- >is now shipping a (medical imaging) system using triple 12-bit DAC's, requiring
- >at least 36-bit representations of colors. Then there is the Pantone Corp.'s
- >Hexachrome (tm) hi-fi color system, with 6 color intensities. How do we encode
- >this system in 32 bits? Hmmm? 5-bit intensities?
-
- Obviously, you do not encode 36 bit values using only 32 bits. You use a
- custom solution, perhaps taking advantage of platform-specific APIs and
- data structures.
-
- >If ODF intends to provide a platform-independent imaging model, it cannot and
- >must not rely upon a lowest-common-denominator approach, it must support a
- >model that is powerful enough to support the most powerful existing models and
- >allow for future growth in imaging technology. I believe that this requires,
- >among other things, a 48-bit or greater color model.
-
- PostScript and OpenGL are full-featured, platform-independent imaging
- systems. ODF does not try to provide this level of abstraction from the
- underlying graphics system. Instead we put a thin, platform neutral
- wrapper around the platform-specific imaging routines. Just enough to save
- most users from the horrors of QuickDraw/GDI, not so much that performance
- is seriously damaged.
-
- It is a fact that display hardware used on current PCs and Macs (and quite
- possibly million dollar SGI medical systems) can only display 24 bits of
- color. Even on the best monitor, of those 16 million colors, your eye will
- only be able to distinguish between perhaps a few hundred thousand. For
- screen display ODF's color model is more than enough.
-
- ODF's color model is not good enough if your part is designed to manipulate
- 2400 dpi/30 bit color scans. But chances are, if you are writing code to
- handle images with such precision you know how to do it better than we can.
-
- > While I'm in rant mode, I'd like to take a shot at the available ODF
- >documentation. Sure, ODF is a work in progress, but is that any excuse not to
- >write meaningful comments in the code? Remember, ODF source code must be
- >read and understood by (hopefully tens of) thousands of programmers. Getting
- >all these people enthusiastic about ODF requires that we not have to work _too_
- >hard to understand it. The ODF Class Reference (ODFCR) is only about 2/3
- >written, and even that is (necessarily, I realize) not fully up to date. How
- >am I supposed grok the essence (let alone the fullness) of anything in the
- >framework layer when there is _no_ data in the ODFCR (at least the useable one
- >in Quickview form) on the Framework layer? I frankly don't have the spare time
- >to waste thrashing thru the engineering notes, the development notes and other
- >random possible sources to try to find prose explanations for why some things
- >are done the way they are. If such explanations exist except inside some
- >already overworked Apple programmer's head.
-
- I think that if you do spend the time to read the engineering notes
- specific to your problem you will find your time is not wasted. Quite
- possibly by doing so you will be able to provide us with constructive
- criticism so the Framework layer documentation is as good as it can be
- before it gets locked into a more formal format (like a printed book, for
- instance).
-
- As a member of the QA team, my eyes bleed from the amount of ODF
- documentation I have reviewed. We make every effort to ensure it is as
- legible, accurate and approachable as possible. Naturally, we are few and
- our developers are many. We (the QA team) cannot possibly read piece of
- documentation with the pure objectivity of a newcomer.
-
- Please help us help you.
-
- > ODF has a lot of potential, but it is a tool and the usability of any complex
- >tool is highly dependant on its documentation. Consider this a plea for some
- >additional efforts in that area.
-
- If you have the OpenDoc DR5 CD (from WWDC) or have visited our web page
- <http://www.devtools.apple.com/odf/download.html> you have ODF Release 1.
- You will see there are two applications on the CD, one for installing ODF
- with almost no user interaction and another that automates the CodeWarrior
- build process.
-
- You no longer need to use MPW to build your CodeWarrior parts and ODFRC,
- the cross-platform resource compiler is now available as a CodeWarrior
- plugin. With each release you will see us improve the usability and
- approachability of ODF. These recent steps were partly the result of
- developer feedback we've received from earlier releases.
-
- Please provide us with as much focused, constructive criticism as possible
- and we will endeavor to meet your needs.
-
- >Martin, Bill & the Sigma 4 gang
-
- -Damon Cokenias
- A Quality ODF Team Member
-
-
- +-----------------------------------------------------------------------+
- | /\ Damon Cokenias |
- | /^^\ cokenias@mtn-palace.com |
- | /____\ Visit the Mountain Palace at http://www.netgate.net/~cokenias |
- +-----------------------------------------------------------------------+
-
-